package org.easy.tool.service;

import org.easy.tool.entity.Knowledge;
import org.easy.tool.entity.Problem;
import org.easy.tool.entity.ProblemKnowledge;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.LinkedHashMap;
import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author Valley
 * @since 2024-09-04 22:51:14
 */
public interface IProblemKnowledge extends IService<ProblemKnowledge> {

    /**
     * 查询当前题目对应的标签
     */
    List<Knowledge> getProblemKnowledgeList(LinkedHashMap data);

    /**
     * 查询当前题目对应的标签
     */
    List<Knowledge> getProblemKnowledgeList(String data);

    /**
     * 编辑题目和标签关系
     */
    boolean editProblemKnowledge(LinkedHashMap data);

    /**
     * 新增题目和标签关系
     */
    boolean addProblemKnowledge(String problemId, String knowledgeId);

    /**
     * 删除题目和标签关系
     */
    boolean removeProblemKnowledge(String problemId, String knowledgeId);

    /**
     * 组装题目和标签的关系
     */
    List<LinkedHashMap> mergeProblemKnowledge();

    /**
     * 首页携带条件获取题目列表
     */
    List<Problem> getProblemList(LinkedHashMap data);

    /**
     * 题目测试
     */
    Object exam(LinkedHashMap data);

    /**
     * 获取有题目的学科进行测试
     */
    Object getSubjectWithProblem(LinkedHashMap data);

    /**
     * 功能：将knowledge
     */
    Object test1();

    Object batchAddByProblemId(LinkedHashMap data);
}
